package com.powernode.config;

import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.mapper.MapperScannerConfigurer;
import org.springframework.context.annotation.Bean;

import javax.sql.DataSource;

/**
 * ClassName:mybatisconfig
 * <p>
 * Description:
 *
 * @author hacker
 * @Create 2024/2/22 17:10
 * @Version 1.0
 */

public class mybatisconfig {
    @Bean
    public SqlSessionFactoryBean sqlSessionFactory(DataSource dataSource){
        SqlSessionFactoryBean ssfb = new SqlSessionFactoryBean();
        ssfb.setTypeAliasesPackage("com.powernode.Dao");  // 这样 在
        ssfb.setDataSource(dataSource);  //  这个 是 非 简单 数据 类型 要使用BEan
        return ssfb;  // 这样 就配置 好了
    }

    // 然后 就是 将xxxMapper  注册 到 核心 配置文件
    @Bean  // 纳入 管理  同时 这个 类 也被 注册 到了 spring核心配置文件 里面  主要 是 为了 管理 第三方的 BEan 对象
    public MapperScannerConfigurer mapperScannerConfigurer(){
        // 这个 就是 在配配置 并且 会
        MapperScannerConfigurer aa = new MapperScannerConfigurer();
        aa.setBasePackage("com.powernode.Dao");  // 这个因为 使用 package 这种 方式 来 获取  要求
        return aa;
    }
}
